package com.study.app.domain.bo;

import com.study.common.core.domain.BaseEntity;
import com.study.common.core.validate.AddGroup;
import com.study.common.core.validate.EditGroup;
import lombok.Data;
import lombok.EqualsAndHashCode;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

/**
 * App车辆指南业务对象 app_article
 *
 * @author study
 * @date 2023-09-08
 */

@Data
@EqualsAndHashCode(callSuper = true)
public class AppArticleBo extends BaseEntity {

    /**
     *
     */
    @NotNull(message = "不能为空", groups = {EditGroup.class})
    private Long id;

    /**
     * 车辆型号
     */
    @NotBlank(message = "车辆型号不能为空", groups = {AddGroup.class, EditGroup.class})
    private String vehicleType;

    /**
     * 指南类型:1、整车使用指南，2、配件安装指南，3、车辆保养指南
     */
    @NotNull(message = "指南类型:1、整车使用指南，2、配件安装指南，3、车辆保养指南不能为空", groups = {AddGroup.class, EditGroup.class})
    private Integer articleType;

    /**
     * 标题
     */
    @NotBlank(message = "标题不能为空", groups = {AddGroup.class, EditGroup.class})
    private String articleTitle;

    /**
     * 封面图片
     */
    @NotBlank(message = "封面图片不能为空", groups = {AddGroup.class, EditGroup.class})
    private String articleImages;

    /**
     * 正文内容：注明文章
     */
    @NotBlank(message = "正文内容：注明文章不能为空", groups = {AddGroup.class, EditGroup.class})
    private String articleContent;

    /**
     * 文章状态 0关闭，1正常
     */
    @NotNull(message = "文章状态 0关闭，1正常不能为空", groups = {AddGroup.class, EditGroup.class})
    private Integer articleStatus;

    /**
     * 浏览数量
     */
    @NotNull(message = "浏览数量不能为空", groups = {AddGroup.class, EditGroup.class})
    private Long viewCount;

    /**
     * 点赞数量
     */
    @NotNull(message = "点赞数量不能为空", groups = {AddGroup.class, EditGroup.class})
    private Long likeCount;

    /**
     * 评论数量
     */
    @NotNull(message = "评论数量不能为空", groups = {AddGroup.class, EditGroup.class})
    private Long commentCount;

    /**
     * 1:置顶 2:不置顶
     */
    @NotNull(message = "1:置顶 2:不置顶不能为空", groups = {AddGroup.class, EditGroup.class})
    private Integer top;

    /**
     * 1:图文 2:视屏
     */
    @NotNull(message = "1:图文 2:视屏不能为空", groups = {AddGroup.class, EditGroup.class})
    private Integer articleCategory;


}
